﻿using System;
using System.ComponentModel;
using System.Drawing.Design;
using ApplicationGenerator.GeneratorMenu.Forms;

namespace ApplicationGenerator.GeneratorMenu.BusinessLogic
{
    /// <summary>
    /// Element menu
    /// </summary>
    [Serializable]
    public class ApplicationMenuItem : ApplicationMenuBase
    {
        [Category("Podstawowe dane")]
        [DisplayName("Wyświetlany tekst")]
        [Description("Tekst, który będzie wyświetlany w elemencie menu")]
        public string Text
        {
            set;
            get;
        }

        [Category("Podstawowe dane")]
        [DisplayName("Url do docelowej strony")]
        [Description("Url, który będzie wyświetlany po naciśnięciu tego elementu")]
        [TypeConverter(typeof(UrlSelectConverter))]
        [Editor(typeof(UrlSelectEditor), typeof(UITypeEditor))]
        public string Url
        {
            set;
            get;
        }

        [Category("Podstawowe dane")]
        [DisplayName("Role")]
        [Description("Role, do których musi należeć użytkownik, aby móc wykonać tę akcję. Role oddzielone średnikiem.")]
        public string Roles
        {
            get;
            set;
        }


        public ApplicationMenuItem()
        {
            Text = string.Empty;
            Url = string.Empty;
            Roles = string.Empty;
        }
    }
}
